home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / lib / perl5 / Mouse / Spec.pm < prev    next >
Encoding:
Perl POD Document  |  2010-07-26  |  3.1 KB  |  154 lines

  1. package Mouse::Spec;
  2. use strict;
  3. use warnings;
  4.  
  5. our $VERSION = '0.64';
  6.  
  7. our $MouseVersion = $VERSION;
  8. our $MooseVersion = '1.05';
  9.  
  10. sub MouseVersion{ $MouseVersion }
  11. sub MooseVersion{ $MooseVersion }
  12.  
  13. 1;
  14. __END__
  15.  
  16. =head1 NAME
  17.  
  18. Mouse::Spec - To what extent Mouse is compatible with Moose
  19.  
  20. =head1 VERSION
  21.  
  22. This document describes Mouse version 0.64
  23.  
  24. =head1 SYNOPSIS
  25.  
  26.     use Mouse::Spec;
  27.  
  28.     printf "Mouse/%s is compatible with Moose/%s\n",
  29.         Mouse::Spec->MouseVersion, Mouse::Spec->MooseVersion;
  30.  
  31. =head1 DESCRIPTION
  32.  
  33. Mouse is a subset of Moose. This document describes to what extend Mouse is
  34. compatible with Moose.
  35.  
  36. =head2 Compatibility with Moose
  37.  
  38. The sugary API is highly compatible with Moose.
  39.  
  40. =head2 Incompatibility with Moose
  41.  
  42. =head3 Meta object protocols
  43.  
  44. Any MOP in Mouse has no attributes by default.
  45.  
  46. For this reason, C<< $metaclass->meta->make_immutable() >> does not yet work as you expect.
  47. B<Don not make metaclasses immutable>.
  48.  
  49. =head3 Mouse::Meta::Instance
  50.  
  51. Meta instance mechanism is not implemented.
  52.  
  53. =head3 Role exclusion
  54.  
  55. Role exclusion, C<exclude()>, is not implemented.
  56.  
  57. =head3 -metaclass in Mouse::Exporter
  58.  
  59. C<< use Mouse -metaclass => ... >> are not implemented.
  60. Use C<< use Mouse -traits => ... >> instead.
  61.  
  62. =head3 Mouse::Meta::Attribute::Native
  63.  
  64. Native traits are not supported directly, but C<MouseX::NativeTraits> is
  65. available on CPAN. Once you have installed it, you can use it as the same way
  66. in Moose. That is, native traits are automatically loaded by Mouse.
  67.  
  68. See L<MouseX::NativeTraits> for details.
  69.  
  70. =head2 Notes about Moose::Cookbook
  71.  
  72. Many recipes in L<Moose::Cookbook> fit L<Mouse>, including:
  73.  
  74. =over 4
  75.  
  76. =item *
  77.  
  78. L<Moose::Cookbook::Basics::Recipe1> - The (always classic) B<Point> example
  79.  
  80. =item *
  81.  
  82. L<Moose::Cookbook::Basics::Recipe2> - A simple B<BankAccount> example
  83.  
  84. =item *
  85.  
  86. L<Moose::Cookbook::Basics::Recipe3> - A lazy B<BinaryTree> example
  87.  
  88. =item *
  89.  
  90. L<Moose::Cookbook::Basics::Recipe4> - Subtypes, and modeling a simple B<Company> class hierarchy
  91.  
  92. =item *
  93.  
  94. L<Moose::Cookbook::Basics::Recipe5> - More subtypes, coercion in a B<Request> class
  95.  
  96. =item *
  97.  
  98. L<Moose::Cookbook::Basics::Recipe6> - The augment/inner example
  99.  
  100. =item *
  101.  
  102. L<Moose::Cookbook::Basics::Recipe7> - Making Moose fast with immutable
  103.  
  104. =item *
  105.  
  106. L<Moose::Cookbook::Basics::Recipe8> - Builder methods and lazy_build
  107.  
  108. =item *
  109.  
  110. L<Moose::Cookbook::Basics::Recipe9> - Operator overloading, subtypes, and coercion
  111.  
  112. =item *
  113.  
  114. L<Moose::Cookbook::Basics::Recipe10> - Using BUILDARGS and BUILD to hook into object construction
  115.  
  116. =item *
  117.  
  118. L<Moose::Cookbook::Roles::Recipe1> - The Moose::Role example
  119.  
  120. =item *
  121.  
  122. L<Moose::Cookbook::Roles::Recipe2> - Advanced Role Composition - method exclusion and aliasing
  123.  
  124. =item *
  125.  
  126. L<Moose::Cookbook::Roles::Recipe3> - Applying a role to an object instance
  127.  
  128. =item *
  129.  
  130. L<Moose::Cookbook::Meta::Recipe2> - A meta-attribute, attributes with labels
  131.  
  132. =item *
  133.  
  134. L<Moose::Cookbook::Meta::Recipe3> - Labels implemented via attribute traits
  135.  
  136. =item *
  137.  
  138. L<Moose::Cookbook::Extending::Recipe3> - Providing an alternate base object class
  139.  
  140. =back
  141.  
  142. =head1 SEE ALSO
  143.  
  144. L<Mouse>
  145.  
  146. L<Moose>
  147.  
  148. L<Moose::Manual>
  149.  
  150. L<Moose::Cookbook>
  151.  
  152. =cut
  153.  
  154.